package cn.tedu.smartos.seniorcourse.mapper;

import cn.tedu.smartos.seniorcourse.pojo.entity.Course;
import cn.tedu.smartos.seniorcourse.pojo.entity.CourseCategory;
import cn.tedu.smartos.seniorcourse.pojo.entity.CourseLesson;
import cn.tedu.smartos.seniorcourse.pojo.entity.LearningRecord;
import cn.tedu.smartos.seniorcourse.pojo.vo.CourseCategoryVO;
import cn.tedu.smartos.seniorcourse.pojo.vo.CourseLessonVO;
import cn.tedu.smartos.seniorcourse.pojo.vo.CourseVO;
import cn.tedu.smartos.seniorcourse.pojo.vo.LearningRecordVO;

import java.util.List;

public interface CourseMapper {
    // 获取所有课程列表
    List<CourseVO> list(Integer categoryId);
    // 获取课程详情
    CourseVO detail(Long courseId);
    // 添加课程
    Integer add(Course course);
    // 删除课程
    Integer delete(List<Long> courseIds);
    // 修改课程
    Integer update(Course course);
//——————————————————————————————————————————————————————————
    // 获取课程分类列表
    List<CourseCategoryVO> listCategory();
    // 获取课程分类详情
    CourseCategoryVO detailCategory(Long categoryId);
    // 添加课程分类
    Integer addCategory(CourseCategory courseCategory);
    // 删除课程分类
    Integer deleteCategory(List<Long> categoryIds);
//——————————————————————————————————————————————————————————
    // 获取课程章节列表
    List<CourseLessonVO> listLessons(Long courseId);
    // 获取课程章节详情
    CourseLessonVO detailLesson(Long lessonId);
    // 添加课程章节
    Integer addLesson(CourseLesson courseLesson);
    // 删除课程章节
    Integer deleteLesson(List<Long> lessonIds);
    // 修改课程章节
    Integer updateLesson(CourseLesson courseLesson);
//———————————————————————————————————————————————————————————
    // 添加学习记录
    Integer addRecord(LearningRecord learningRecord);
    // 课程学习记录列表
    List<LearningRecordVO> listRecords(Long elderlyUserId);
    // 课程学习记录详情
    LearningRecordVO detailRecord(Long recordId);
    // 删除课程学习记录
    Integer deleteRecord(List<Long> recordIds);
}
